package recursivecontrol.extensions.view
{
	public class BitmapCollisionDetector
	{
		/**
		 * Performs pixel-perfect collisions.
		 */
		
		public function BitmapCollisionDetector()
		{
		}
		
		/**
		 * Given the current state of two sprites, determine whether they are colliding.
		 * Remember that broadphase checks eg. quadtree and AABB overlap should be performed
		 * before calling this relatively expensive function.
		 * 
		 * @param a The first BitmapDataSprite to check for collision.
		 * @param b The first BitmapDataSprite to check for collision.
		 * @param thresholdAlpha The alpha value at which pixels are considered "solid" for
		 * purposes of checking collision. If the combined alpha of pixels from a and b at a
		 * given pixel location meet or exceed this threshold, a collision will be detected. 
		 */
		
		public function isColliding(a:BitmapSprite, b:BitmapSprite, thresholdAlpha:Number = 1)
		{
			//TODO
		}
	}
}